iT邦幫忙

design pattern相關文章
共有 395 則文章

技術 [深入淺出設計模式] Ch9 The iterator and composite patterns (2) - 範例 整合餐廳菜單

上篇講完這個範例的需求,簡單來說我們現在要寫一個通用的介面Iterator,讓Waiter可以方便取得不同資料型態儲存資料的餐廳菜單資訊,用統一的方式去迭代資料...

技術 《補充》 — 30+ Golden Rules in System Design

本文轉載自 LinkedIn 作者 Arslan Ahmad 的 guiding principles to help you answer system de...

技術 《補充》 — Design Patterns Used Across Different Layers in Distributed System

本篇原文節錄自 LinkedIn 作者: Arslan Ahmad 的 𝐃𝐞𝐬𝐢𝐠𝐧 𝐏𝐚𝐭𝐭𝐞𝐫𝐧𝐬 𝐔𝐬𝐞𝐝 𝐀𝐜𝐫𝐨𝐬𝐬 𝐃𝐢𝐟𝐟𝐞𝐫𝐞𝐧𝐭 𝐋𝐚𝐲𝐞𝐫𝐬...

鐵人賽 自我挑戰組 DAY 27

技術 [深入淺出設計模式] Ch7 The Adapter Pattern (4) - 【外觀模式】範例 Home Sweet Home Theater 家庭劇院

外觀模式範例 Home Sweet Home Theater 家庭劇院 外觀模式的概念在上篇已經有介紹過,簡單來說他就是可以簡化使用者介面的方法,同時也有保留功...

鐵人賽 Software Development DAY 28

技術 [Day 28] 不修改對象並為其添加操作 - 訪問者模式 (Visitor Pattern)

(待改進... 終於快結束了 (累...) Intro Visitor 設計模式是一種行為設計模式,允許您在不修改對象的情況下為其添加更多操作。當您需要處理由...

鐵人賽 自我挑戰組 DAY 24

技術 [深入淺出設計模式] Ch7 The Adapter Pattern (1) - 【轉接器模式】範例 SimUDuck 鴨子模擬器

轉接器模式 Adapter Pattern 可以讓物件在不同類別或介面中被使用,它可以把物件在不改變它本身類別的情況下,讓它轉換成另一個類別的樣子。轉接器可以分...

鐵人賽 自我挑戰組 DAY 24

技術 [Day24] Design Pattern - Memento備忘錄模式

定義 Memento is a behavioral design pattern that lets you save and restore the p...

鐵人賽 Software Development DAY 27

技術 [Day 27] 複製複雜已知物件 - 原型模式 (Protorype Pattern)

(待改進...) 簡介 原型模式用於創建對象的複製。這種模式主要用於避免創建對象的成本和資源消耗,特別是當一個對象需要經過時間消耗的初始化過程時 Appli...

鐵人賽 Software Development DAY 26

技術 [Day 26] 儲存系統的重要狀態 — 備忘錄模式 (Memento Pattern)

Intent Memento 模式是一種行為設計模式,主要用於捕獲和存儲對象的內部狀態,以便稍後可以將其恢復到這一狀態。這種模式特別有用於實現**「撤銷」操作...

鐵人賽 Software Development DAY 25

技術 [Day 25] 集中對象間複雜的控制和溝通 — 中介者模式 (Mediator Pattern)

Intent 中介者模式是一種行為設計模式,專門用於減少多個類 (稱為 "Colleagues") 之間的直接耦合。這是通過將這些類之間的...

鐵人賽 Software Development DAY 24

技術 [Day 24] 以類別來表達文法規則 -解譯器模式 (Interpreter Pattern)

Intent 解譯器模式是一種行為設計模式,主要用於解釋語言的語法和語義。它為解釋語言提供了一個形式化的機制,並且通過建立一個解釋器來解釋語言中的句子...

鐵人賽 Software Development DAY 23

技術 [Day 23] 集中管理大量物件實例 - 蠅量模式 (Flyweight Pattern)

Intent Aims to minimize memory usage or computational expenses by sharing as mu...

鐵人賽 自我挑戰組 DAY 18

技術 [Day18] Design Pattern - Proxy代理模式

前言 今天上班的時候師父剛好教我設定公司電腦的proxy😶‍🌫️結果很巧的今天就輪到要來寫這篇! 定義 Proxy is a structural d...

鐵人賽 Software Development DAY 21

技術 [Day 21] 拆解複雜物件的建立 - 生成器模式 (Builder Pattern)

Intent Builder is a creational design pattern that lets you construct complex o...

鐵人賽 自我挑戰組 DAY 17

技術 [Day17] Design Pattern - Flyweight 享元模式

前言 今天師父請假在公司自立自強然後主管為我上了堂有趣的產品課😊我還在喜歡上班的階段 好好珍惜😚 定義 Flyweight is a structura...

鐵人賽 Software Development DAY 20

技術 [Day 20] 將實作與抽象放在不同類別階層 — 橋接器模式 (Bridge Pattern)

說明 Bridge is a structural design pattern that lets you split a large class or a...

鐵人賽 自我挑戰組 DAY 16

技術 [Day16] Design Pattern - Facade 外觀模式

定義 Facade is a structural design pattern that provides a simplified interface...

鐵人賽 Software Development DAY 19

技術 [Day 19] 模式動物園 — 23種模式的總結及補充

目前我們介紹了 14 種基本設計模式,以及 MVC 複合模式。這邊我們來簡單總結一下 GoF (四人幫) 設計模式中所提到的 23 種設計模式以及簡短定義 此...

鐵人賽 Software Development DAY 18

技術 [Day 18] 複合模式的王者 — MVC (Model-View-Controller)

介紹 我們通常會一起使用很多種模式,並且在同一個設計解決方案裡面結合它們深入淺出設計模式, 2nd (p.494) 前面的章節中我們已經大致介紹了 14...

鐵人賽 自我挑戰組 DAY 14

技術 [Day14] Design Pattern - Composite組合模式

前言 中秋快樂!! 定義 Composite is a structural design pattern that lets you compose...

鐵人賽 Software Development DAY 17

技術 [Day 17] 控制與物件的接觸 — 代理模式 (Proxy Pattern)

敘述 Proxy Pattern 是一種結構型設計模式,用於代理或替換另一個對象以控制對原始對象的訪問 組成 Proxy: 提供和 RealObjec...

鐵人賽 自我挑戰組 DAY 13

技術 [Day13] Design Pattern - Bridge橋接模式

前言 今天最感動的是我實習的training終於完成了~~🥳這也代表我要開始碰到正式專案了😶‍🌫️ 定義 Bridge is a structural...

鐵人賽 Software Development DAY 16

技術 [Day 16] 讓物件仿佛變成另一個類別 — 狀態模式 (State Pattern)

定義 狀態模式 (State Pattern) 是一種用於實現狀態機的物件導向方法。主要目的是將一個物件的多種狀態封裝在不同的類別中,從而使狀態轉換更為靈活和可...

鐵人賽 Software Development DAY 15

技術 [Day 15] 建立樹狀結構的物件 — 組合模式 (Composite Pattern)

定義 組合模式是一種結構型設計模式,它允許將物件組合成樹形結構,以表示 "部分/整體" 的階層結構。用戶端可以用一致的方式來處理個別物件與...

鐵人賽 Software Development DAY 14

技術 [Day 14] 把迭代封裝起來 — 迭代模式 (Iterator Design Pattern)

定義 Iterator Pattern 提供一種方式讓你依序存取物件集合 (Aggregate) 的元素,而且不會公開它物件的底層表示法 (By GoF) 資...

鐵人賽 Software Development DAY 13

技術 [Day 13] 封裝演算法元素 - 樣板方法模式 (Template Method Pattern)

定義 Template Method is a behavioral pattern that allows you to defines a skeleto...

鐵人賽 自我挑戰組 DAY 9

技術 [深入淺出設計模式] Ch2 The Decorator Pattern (2) 【裝飾者模式】範例 Starbuzz Order System

延續上篇的範例,要來看看怎麼去實作裝飾者模式,簡單來說我們的目的就是要在不動到Beverage()的情況下,用調味料去裝飾它,進而做出我們要的飲料,飲料有各自的...

鐵人賽 Software Development DAY 12

技術 [Day 12] 回顧比較 — Decorator / Adapter / Facade 三種 Design Patterns

目的比較 敘述 目的 Adapter 將一個類別的介面轉換為另一個介面 使原本由於介面不相容而不能一起工作的兩個類別可以一起工作 Decor...